package cn.hema.Client;

import cn.hema.model.Borrower;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * 借阅人服务远程调用客户端
 */
@FeignClient(name = "borrower-service", fallback = BorrowerServiceFallback.class)
public interface BorrowerServiceClient {
    /**
     * 根据借阅人 id 获取借阅人对象
     */
    @GetMapping("/borrowers/{id}")
    Borrower getBorrower(@PathVariable("id") Long id);
    /**
     * 获取所有借阅人
     */
    @GetMapping("/borrowers")
    List<Borrower> getAllBorrowers();
    /**
     * 新增一个借阅人
     */
    @PostMapping("/borrowers")
    void createBorrower(@RequestBody Borrower borrower);
    /**
     * 更新一个借阅人信息
     */
    @PutMapping("/borrowers/{id}")
    void updateBorrower(@PathVariable("id") Long id, @RequestBody Borrower borrower);
    /**
     * 根据id删除借阅人信息
     */
    @DeleteMapping("/borrowers/{id}")
    void deleteBorrower(@PathVariable("id") Long id);
}
